import { Success, Fail } from './result'
import Mock from 'mockjs'
// 开关 根据项目自定义 只有开发模式可以启用
const status = process.env.NODE_ENV === 'development'
if (status) {
  try {
    Mock.setup({
      timeout: '500-1000',
    })
    // 读取api文件夹里的模块
    const modules = require.context('./api', false, /\.js$/)
    modules.keys().forEach((key) => {
      const module = modules(key).default
      /**
        @param url 请求url
        @param type 1 成功 0 失败
        @param method 请求方式 默认get
        @param active 是否启用Mock 默认启用
        @param data 请求结果数据 语法参考mock.js官网
      */
      module.forEach(({ url, method = 'get', type = 1, active = 1, ...result }) => {
        if (!active) return
        const fn = [Fail, Success][type]
        const baseUrl = '/api'
        Mock.mock(baseUrl + url, method, fn(result))
      })
    })
  } catch (error) {
    console.log(error)
  }
}
